The present invention relates generally to data communications networks and more particularly to a flow control system for regulating information transfer rate within networks.
Efficient informational flow control has been an important consideration in the research and design of high speed communications networks. Flow control processing varies a sender""s allowable rate of information transfer in response to feedback from the network within which the information is being transferred. In an exemplary embodiment, a traffic source sends a xe2x80x9cprobexe2x80x9d message into the network and receives a xe2x80x9creplyxe2x80x9d from the traffic destination end system. This information flow happens continuously (as long as data is available at the source) so the source receives information every xe2x80x9cround-tripxe2x80x9d time. If a network is not congested, the session""s source of the information being transferred is allowed to increase the rate at which the information is sent thereby taking greater advantage of available bandwidth. When more congestion is present, the rate is reduced. Typically the sending rate of a session during which information is being transferred will oscillate around a desired operating point.
A session with a short propagation delay receives and reacts to feedback from the network much faster than a session with a long propagation delay. This can cause an unfair allocation of available bandwidth, i.e. closer nodes will be granted bandwidth at a disproportionate rate relative to nodes which are located a greater distance away. The sending rate for an information packet is decreased if one of the nodes along its path is congested. That xe2x80x9cgreater distancexe2x80x9d information transfer is therefore at a disadvantage with respect to sessions traversing a single xe2x80x9chopxe2x80x9d, or relatively fewer xe2x80x9chopsxe2x80x9d between source and destination nodes.
Thus, in typical rate-based flow-controlled methodologies, connection xe2x80x9clengthxe2x80x9d (for example the propagation delay across the network as measured by the endpoints) affects bandwidth allocation fairness. This is especially true of rate control schemes in which rate changes occur at times controlled by the round-trip time experienced during network operation. For example, in systems where rate increases are accomplished according to the sender receiving a congestion message from the receiver based on a control loop determined by the round trip time, connections which have smaller round-trip times have an advantage in that their rate increase epochs occur more frequently, and thus the closer nodes can obtain a larger allocation of the shared link bandwidth if they do not scale their increases according to a globally-set baseline increase amount and their experienced round-trip or update times.
Therefore there is a need for an improved methodology for determining and assigning allocations of available bandwidth for data transfers within networking systems.
A data transfer flow control system for a packet communications system includes a plurality of nodes interconnected by transmission links. The rate at which a sender node transmits information to a destination node in a network is modified in accordance with congestion information returned to the sender node from nodes along the path of the transmission. The rate change for information being sent from the sender node is modified based upon the amount of elapsed time occurring since the last rate change of the same type. In first and second examples, the rate change is implemented in accordance with exponential and linear relationships, respectively, between the modified flow rate and the elapsed time since the last rate change.